﻿using System;
using System.Collections.Generic;

using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;
using MinhTam.DataAccess.Web;
using MinhTam.Objects;
using System.Data;
public partial class DMTinhThanh : System.Web.UI.Page
{
    protected void Page_Load(object sender, EventArgs e)
    {
       
        if (!IsPostBack)
        {          
            
          
            InitListData();
        
        }
    }
    
    private void InitListData()
    {
        string sql = @"SELECT ROW_NUMBER() OVER (ORDER BY isnull(tt.SAP_XEP,9999), tt.TEN_TINH_THANH) STT ,tt.*
        FROM TINH_THANH tt      
        ";
        DataTable dt = SQLConnectWeb.GetTable(sql, TINH_THANH.sTableName);
        gridViewData.DataKeyNames = new string[] {
            TINH_THANH.cl_TINH_THANH_ID, 
            TINH_THANH.cl_TEN_TINH_THANH,
            TINH_THANH.cl_SAP_XEP          
          
         };
        gridViewData.AutoGenerateColumns = false;
        gridViewData.DataSource = dt;
        gridViewData.DataBind();

    }
    protected void gridViewData_RowCommand(object sender, GridViewCommandEventArgs e)
    {
        DataKey row = gridViewData.DataKeys[int.Parse(e.CommandArgument.ToString())];
        if (e.CommandName == "cmdEdit")
        {
         //   GridViewRow row = gridViewData.Rows[];
          
            keyField.Value = row.Values[TINH_THANH.cl_TINH_THANH_ID].ToString();
            txtTen.Text = row.Values[TINH_THANH.cl_TEN_TINH_THANH].ToString();
          
            txtSapXep.Text = row.Values[TINH_THANH.cl_SAP_XEP].ToString();
            btnSave.Text = "Cập nhật";

        }
        else if (e.CommandName == "cmdDelete")
        {
            string delete = row.Values[TINH_THANH.cl_TINH_THANH_ID].ToString();
           // HelpControls.ShowMsgBoxConfirmDelete(this);
            string sql = string.Format("delete from {0} where {1}={2}", TINH_THANH.sTableName, TINH_THANH.cl_TINH_THANH_ID, delete);
            if (SQLConnectWeb.ExecSQL(sql))
            {
              //  HelpControls.ShowMsgBox(this, "Xóa dữ liệu thành công!");
                InitListData();
                if (delete == keyField.Value)
                    btnClearNew_Click(null, null);
            }
            else
            {
                HelpControls.ShowMsgBox(this, "Dữ liệu đang được sử dụng!");
            }
         
        }
    }

    protected void btnClearNew_Click(object sender, EventArgs e)
    {
        
      
        txtTen.Text = "";
        keyField.Value = "";
        txtSapXep.Text = "";
     
        btnSave.Text = "Lưu";
      
    }
    protected void btnSave_Click(object sender, EventArgs e)
    {
        if (string.IsNullOrEmpty(keyField.Value))//insert
        {
            TINH_THANH obj = TINH_THANH.Insert_Object(txtTen.Text, txtSapXep.Text);
            if (obj == null)
                HelpControls.ShowMsgBox(this, "Lưu dữ liệu thất bại!");
            else
            {
                InitListData();
                keyField.Value = obj.TINH_THANH_ID;
                btnSave.Text = "Cập nhật";
            }
            
        }
        else
        {
            TINH_THANH tt = new TINH_THANH();
            tt.TINH_THANH_ID = keyField.Value;
            if (tt.Save_Object(txtTen.Text, txtSapXep.Text))
            {
                InitListData();
            }
            else
            {
                HelpControls.ShowMsgBox(this, "Lưu dữ liệu thất bại!");
            }
        }
    }

    protected void gridViewData_RowDataBound(object sender, GridViewRowEventArgs e)
    {
        if (e.Row.RowType == DataControlRowType.DataRow)
        {
            ((LinkButton)e.Row.Cells[1].Controls[0]).OnClientClick = "return confirm('Bạn có chắc là muốn xóa dữ liệu này?');";
        }
    }
}
